package com.wind.taobao.api.trade.itemprop.rest
{
	import com.wind.taobao.api.IPublicAPI;
	import com.wind.taobao.core.exception.InvalidRequestParametersException;
	import com.wind.taobao.core.util.TaobaoUtils;
	import com.wind.taobao.core.webservice.TaobaoRequest;

	/**
	 * taobao.itempropvalues.get Request
	 * @author fxy
	 *
	 */
	public class ItemPropValuesGetRequest extends TaobaoRequest implements IPublicAPI
	{
		public override function get method():String
		{
			return "taobao.itempropvalues.get"
		}
		/**
		 * Y 	 需要返回的字段。目前支持有：cid,pid,prop_name,vid,name,name_alias,status,sort_order
		 */
		[Bindable]
		public var fields:String="cid,pid,prop_name,vid,name,name_alias,status,sort_order";
		/**
		 * Y 	叶子类目ID ,通过taobao.itemcats.get.v2获得叶子类目ID
		 */
		[Bindable]
		public var cid:String;
		/**
		 * 属性和属性值 id串，格式例如(pid1;pid2)或(pid1:vid1;pid2:vid2)或(pid1;pid2:vid2)
		 */
		[Bindable]
		public var pvs:String;
		/**
		 * 增量时间戳。格式:yyyy-MM-dd HH:mm:ss 假如传2005-01-01 00:00:00，则取所有的属性和子属性(状态为删除的属性值不返回prop_name)
		 */
		[Bindable]
		public var datetime:String;

		public override function validate():void
		{
			if (!TaobaoUtils.hasValue(fields))
			{
				throw new InvalidRequestParametersException("请求参数[fields]必须有值");
			}
			if (!TaobaoUtils.hasValue(cid))
			{
				throw new InvalidRequestParametersException("请求参数[cid]必须有值");
			}
			if (!TaobaoUtils.hasAnyValue([pvs, datetime]))
			{
				throw new InvalidRequestParametersException("请求参数[pvs, datetime]至少有一个有值");
			}
		}
	}
}